package yl.hs.bmipfull.daos.system;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.springframework.stereotype.Repository;
import yl.hs.bmipfull.daos.BaseDao;
import yl.hs.bmipfull.pojo.system.AppSettingEntity;

import java.util.List;

/*
 * IAppSettingDao
 * @category
 * @author 谢景广
 * @date 2021-05-13
 */
@Repository
public interface IAppSettingDao extends BaseDao<AppSettingEntity> {
    /**
     * 根据组织架构单位或者部门编号获取所有的设置信息，单位编号为空时获取信息为全部设置信息
     *
     * @param snArray 组织单位编号
     * @return
     */
    List<AppSettingEntity> queryAll(@Param("snArray") String[] snArray);

    /**
     * 根据
     *
     * @param code
     * @param unitSN
     * @return
     */
    Integer checkSetParamCodeExists(String code, String unitSN);


    /**
     * 根据编码获取 配置项信息
      * @param code 编码
     * @return 配置项信息
     */
    @Select("select * from app_setting where paramCode = #{code} limit 1")
    AppSettingEntity getByCode(String code);

    AppSettingEntity findBlueArea(@Param("code") String code);

    /**
     * 根据编码获取 配置项信息
     * @param code 编码
     * @param unitSN 单位编号
     * @return 配置项信息
     */
    @Select("select * from app_setting where paramCode = #{code} and organizationSN = #{unitSN} limit 1")
    AppSettingEntity getByCodeAndUnitSN(@Param("code") String code, @Param("unitSN") String unitSN);
    @Select("select * from app_setting where paramCode = #{code} limit 1")
    AppSettingEntity getByParamCode(@Param("code") String code);

}
